#ifndef VECT
#define VECT

#include <iostream>
#include <fstream>

class vect
{
	unsigned int size_of;
	unsigned int quantity;
	union
	{
		long long* a_nums;
		long long num;
	} box;
public:
	vect();
	vect(long long digit);
	vect(const vect& vector);
	~vect();
	vect& operator = (const vect& vector);
	unsigned int size() const;
	unsigned int begin();
	long long& operator[](unsigned int i);
	long long operator[](unsigned int i) const;
	void push(long long digit);
	void pop();
	void resize(unsigned int size, long long digit);
	void insert(int i, int count, long long digit);
	void swap(vect& vector);
	void clear();
private:
	void grow(bool force = false);
	void shrink();
};

#endif